package com.ruicar.afs.cloud.afscase.mq.approvesendinfo.service;

import com.ruicar.afs.cloud.afscase.mq.approvesendinfo.vo.CaseContractLogInfo;
import com.ruicar.afs.cloud.common.modules.afscorebusiness.enums.ApplyStatusEnum;
import io.swagger.annotations.ApiOperation;

/**
 * @author yk.Li
 * @Date 2020/7/4
 * @description 放款审核MQ-Service
 */
public interface ApproveLoanInfoService {
    /**
     * @param contractNo
     * @param stageId
     * @description 退回合作商信息通知进件系统
     * @author yk.Li
     * @date 2020/6/30
     */
    void backToPartnersNotic(String contractNo, String stageId,String taskId);

    @ApiOperation("通知进件GPS状态")
    void sendToApplyNotic(String contractNo, String status);

    /**
     * @param
     * @return
     * @description 推送接口信息到合同系统
     * @author yk.Li
     * @date 2020/7/8
     */
    void sendLoanMsgToContract(String contractNo);

    /**
     * 通知进件合同状态
     *
     * @param contractNo
     * @param statusEnum
     */
    void sendToApplyNotic(String contractNo, ApplyStatusEnum statusEnum);

    /**
     * 批量通知进件合同状态
     *
     * @param applyNoList
     */
    void sendListToApplyNotic(String applyNoList);

    /**
     * @Description:放款申请落库通知
     * @Author: fangchenliang
     * @Date: 2020/7/14 11:30
     * @Param: [logInfo]
     * @Return: void
     */
    void loanApplyResult(CaseContractLogInfo logInfo);

    /**
     * @param
     * @return
     * @description 推送GPS安装信息到进件系统
     * @author yk.Li
     * @date 2020/7/8
     */
    void sendGpsMsgToApply(Long id);
    /**
     * @param
     * @return
     * @description 推送放款模式信息到进件系统
     * @author panhj
     * @date 2020/8/29
     */
    void sendLoanModelToApply(Long id);
}
